s1_goto_dir() {
	cd "$1" || return 1
}
s2_touch_empty_file_with_given_name() {
	touch "$1"
}
s3_make_directories() {
	mkdir -p projects/git projects/backup
}
s4_create_6_files() {
	touch projects/{linux1_centos,linux1_redhat,linux1_c_programming,linux2_centos,linux2_redhat,linux2_c_programming}
}
s5_make_directories_in_git() {
	mkdir -p projects/git/{linux1,linux2}
}
s6_move_files_to_dir_1_or_2() {
	mv projects/linux1_* projects/git/linux1/
	mv projects/linux2_* projects/git/linux2/
}
s7_create_package_and_compress() {
	tar -czvf projects/backup/git.tar.gz -C projects git
}
s8_delete_dir_git() {
	rm -rf projects/git
}
s9_recover_from_git_tar_gz_backup() {
	tar -xzvf projects/backup/git.tar.gz -C projects
}
s10_create_package_and_compress() {
	tar -jcvf projects/backup/git.tar.bz2 -C projects git
}
s11_find_and_sort_alphabetically_all_created_files_and_dirs() {
	find ./projects | sort
}
s12_get_next_15_minutes_boundary() {
	current_epoch=$(date +%s)
	current_minute=$(date -d "@$surrent_epoch" +%M)
	remainder=$((current_minute % 15))

	if [ $remainder -eq 0 ]; then
		add_minutes=15
	else
		add_minutes=$((15 -remainder))
	fi

	next_time_epoch=$((current_epoch + add_minutes * 60))
	date -d "@$next_time_epoch" +"%Y-%m-%d_%H:%M:%S"
}

